home *** CD-ROM | disk | FTP | other *** search
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- NNNNAAAAMMMMEEEE
- as - SGI MIPSpro Assembler
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- aaaassss [ -o32 | -n32 | -64 ] [ option ] ... file ...
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- _a_s is the SGI assembler. It assembles a symbolic assembly language
- source program, producing an object file in _e_l_f format. The SGI
- assembler support three different Application Binary Interfaces
- controlled by the options ----oooo33332222 , ----nnnn33332222 , and ----66664444 (see _a_b_i(_5) ) _A_s never
- runs the loader.
-
- _a_s always defines the preprocessor symbols: _LANGUAGE_ASSEMBLY, __sgi,
- __mips, __host_mips, __unix, _MIPSEB, _SYSTYPE_SVR4, _SVR4_SOURCE,
- _SGI_SOURCE, _MIPS_ISA, _MIPS_SIM, _MIPS_FPSET, _MIPS_SZINT,
- _MIPS_SZLONG, and _MIPS_SZPTR. These are shown by the ----sssshhhhoooowwww option to
- _a_s(1). The C preprocessor adds other standard definitions of its own
- (see _c_p_p(1)).
-
- The following options are interpreted by _a_s and have the same meaning in
- _c_c(1). See _l_d(1) for load-time options.
-
- CCCCoooommmmmmmmaaaannnnddddlllliiiinnnneeee OOOOppppttttiiiioooonnnnssss
-
- This first set of options control the choice of ABI and ISA (Instruction
- Set Architecture).
-
- ----oooo33332222 oooorrrr ----33332222
- Generate a 32-bit object. This is the default on all systems that
- are not based on the R8000. This implies ----mmmmiiiippppssss2222 if ----mmmmiiiippppssss1111 has not
- been specified.
-
- ----66664444 Generate a 64-bit object. This is the default on R8000 systems.
- This implies ----mmmmiiiippppssss4444 if ----mmmmiiiippppssss3333 has not been specified.
-
- ----nnnn33332222 Generate an n32 object. This implies ----mmmmiiiippppssss3333 if ----mmmmiiiippppssss4444 has not been
- specified.
-
- ----mmmmiiiippppssss1111
- Generate code using the instruction set of the R3000 RISC
- architecture. This implies ----oooo33332222....
-
- ----mmmmiiiippppssss2222
- Generate code using the MIPS II instruction set (MIPS I + some R4000
- specific extensions). This implies ----oooo33332222....
-
- ----mmmmiiiippppssss3333
- Generate code using the full R4000 instruction set. This implies
- ----nnnn33332222 (except on R8000-based systems it implies ----66664444)
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- ----mmmmiiiippppssss4444
- Generate code using the full MIPS IV instruction set (64-bit R8000
- extensions). This implies ----nnnn33332222 (except on R8000-based systems it
- implies ----66664444)
-
- Options valid in all three ABI's.
-
- ----ccccpppppppp Run the C macro preprocessor on assembly source files before
- compiling. This is the default.
-
- ----DDDD_n_a_m_e=_d_e_f
- ----DDDD_n_a_m_e
- Define the _n_a_m_e to the C macro preprocessor, as if by `#define'. If
- no definition is given, the name is defined as "1".
-
- ----EEEE Run only the C macro preprocessor on the specified assembly source
- files, and send the result to the standard output.
-
- ----GGGG _n_u_m
- Specify the maximum size, in bytes, of a data item that is to be
- accessed from the global pointer. _N_u_m is assumed to be a decimal
- number. If _n_u_m is zero, no data is accessed from the global
- pointer. The default value for _n_u_m is 8 bytes when using ----66664444 or
- ----nnnn33332222.... The default value for _n_u_m is 0 when using ----oooo33332222....
-
- ----gggg0000 Have the assembler produce no symbol table information for symbolic
- debugging.
-
- ----gggg Have the assembler produce additional symbol table information for
- full symbolic debugging. This is the default.
-
- ----IIII_d_i_r
- `#include' files whose names do not begin with `/' are always sought
- first in the directory of the _f_i_l_e argument, then in directories
- specified in ----IIII options, and finally in the standard directory
- (////uuuussssrrrr////iiiinnnncccclllluuuuddddeeee).
-
- ----IIII This option will cause `#include' files never to be searched for in
- the standard directory (////uuuussssrrrr////iiiinnnncccclllluuuuddddeeee).
-
- ----kkkkeeeeeeeepppp
- Build and use intermediate file names with the last component of the
- source file's name replacing its suffix with the conventional
- suffix for the type of file (for example `.i' file for preprocessed
- source). These intermediate files are not removed. This option is
- primarily for compiler debugging.
-
- ----nnnnooooccccpppppppp
- Do not run the C macro preprocessor on assembly source before
- compiling.
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- ----nnnnoooonnnn____sssshhhhaaaarrrreeeedddd
- Don't generate position-independent code (PIC).
-
- ----OOOO0000 Turn off all optimizations. This is the default for ----66664444 or ----nnnn33332222....
-
- ----OOOO1111 Turn on all optimizations that can be done easily. This is the
- default for ----oooo33332222....
-
- ----OOOO or ----OOOO2222
- Turn on all optimizations. For ----66664444 or ----nnnn33332222 this just means
- scheduling the code; for ----oooo33332222 this also means more aggressive
- optimizations.
-
- ----oooo _o_u_t_p_u_t
- Name the final output file _o_u_t_p_u_t. If this option is not used, the
- output file is the input file name with a `.o' suffix rather than
- the `.s' suffix.
-
- ----PPPP Run only the C macro preprocessor and put the result for each `.s'
- file in a corresponding `.i' file. The `.i' file has no `#' lines
- in it.
-
- ----sssshhhhoooowwww
- Print the passes as they execute with their arguments and their
- input and output files.
-
- ----UUUU_n_a_m_e
- Remove any initial definition of _n_a_m_e.
-
- CCCCoooommmmmmmmaaaannnnddddlllliiiinnnneeee OOOOppppttttiiiioooonnnnssss ((((----nnnn33332222 oooorrrr ----66664444 oooonnnnllllyyyy))))
-
- ----hhhheeeellllpppp
- This will not run the assembler, but will list all the available
- options.
-
- ----wwwwooooffffffff aaaallllllll
- Suppress all warning messages.
-
- The options described below primarily aid compiler development and are
- not generally used:
-
- ----WWWWaaaa,,,,_a_r_g_1[,_a_r_g_2...]
- Pass the argument[s] _a_r_g_i to the assembler pass. The commas between
- the arguments are translated into spaces.
-
- ----YYYYaaaa,,,,_d_i_r_e_c_t_o_r_y
- Use the aaaassssmmmm pass from the given _d_i_r_e_c_t_o_r_y.
-
- CCCCoooommmmmmmmaaaannnnddddlllliiiinnnneeee OOOOppppttttiiiioooonnnnssss ((((----oooo33332222 oooonnnnllllyyyy))))
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- The options described below primarily aid compiler development and are
- not generally used:
-
- ----ffffuuuullllllllaaaassssoooopppptttt
- Enable all the global optimizations done by the assembler. The
- assembler can perform several global optimizations that are enabled
- automatically for high level languages like C, Pascal and Fortran.
- These optimizations are turned off by default while compiling an
- assembly language source file. This is done because the
- optimizations rely on the procedure calling convention to be
- strictly followed. Several assembly language programs violate these
- restrictions. The ----ffffuuuullllllllaaaassssoooopppptttt option allows enabling of these
- optimizations for .s files.
-
- ----HHHH_c Halt compiling after the pass specified by the character _c,
- producing an intermediate file for the next pass. The _c can be [[[[ aaaa
- ]]]].... It selects the assembler pass in the same way as the ----tttt option.
- If this option is used, the symbol table file produced and used by
- the passes,is the last component of the source file with the suffix
- changed to `.T' and is not removed. Please note that this switch is
- non-standard and may not be supported across product lines.
-
- ----KKKKPPPPIIIICCCC
- Activates the assembler directives for generating position-
- independent code (PIC). This is the default.
-
- The options ----tttt[hhhhppppaaaabbbb], ----hhhh_p_a_t_h, and ----BBBB_s_t_r_i_n_g select a name to use for a
- particular pass. These arguments are processed from left to right so
- their order is significant. When the ----BBBB option is encountered, the
- selection of names takes place using the last ----hhhh and ----tttt options. These
- three options must be used together.
-
- ----tttt[hhhhppppaaaabbbb]
- Select the names. The names selected are those designated by the
- characters following the ----tttt option according to the following table:
- Name Character
- include h
- cpp p
- as0 a
- as1 b
- If the character `h' is in the ----tttt argument then a directory is added
- to the list of directories to be used in searching for `#include'
- files. This directory name has the form /_u_s_r/include_s_t_r_i_n_g. This
- directory is to contain the include files for the _s_t_r_i_n_g release of
- the compiler. The standard directory is still searched.
-
- ----hhhh_p_a_t_h
- Use _p_a_t_h rather than the directory where the name is normally found.
- Please note that this switch is non-standard and may not be
- supported across product lines.
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- ----BBBB_s_t_r_i_n_g
- Append _s_t_r_i_n_g to all names specified by the ----tttt option. If no ----tttt
- option has been processed before the ----BBBB,,,, the ----tttt option is assumed to
- be ``hpab''. This list designates all names.
-
-
- ----WWWW_c,_a_r_g_1[,_a_r_g_2...]
- Pass the argument[s] _a_r_g_i to the assembler pass _c. The _c is one of [[[[
- ppppaaaabbbb ]]]].... The c selects the assembler pass in the same way as the ----tttt
- option. Of particular interest are several options to affect the
- various optimizations done by the assembler. Most of these assembler
- optimizations are fairly new and so are perhaps more likely to have
- problems than other parts of the compiler:
-
- ----WWWWbbbb,,,,----nnnnooooxxxxbbbbbbbb
- Turn off cross basic block instruction scheduling.
-
- ----WWWWbbbb,,,,----nnnnooooppppeeeeeeeepppp
- Turn off peephole optimizations.
-
- ----WWWWbbbb,,,,----nnnnoooosssswwwwppppiiiippppeeee
- Turn off software pipelining.
-
- ----WWWWbbbb,,,,----nnnnoooossssyyyymmmmrrrreeeeggggssss
- Turn off symbolic register renaming.
-
- Note: these global optimizations are enabled only when optimization level
- ----OOOO2222 or higher is selected for high level languages or the ----ffffuuuullllllllaaaassssoooopppptttt
- option is used for assembly language files.
-
- If the environment variable TMPDIR is set, the value is used as the
- directory to place any temporary files rather than the default ////ttttmmmmpppp.
-
- FFFFIIIILLLLEEEESSSS
- file.o object file output
- /usr/include standard `#include' file directory
-
- ((((----oooo33332222 OOOONNNNLLLLYYYY))))
- /tmp/ctm* temporary files
- /usr/lib/cpp C macro preprocessor
- /usr/lib/as0 symbolic assembly language translator
- /usr/lib/as1 binary assembler and reorganizer
-
- ((((----nnnn33332222 aaaannnndddd ----66664444 OOOONNNNLLLLYYYY))))
- /tmp/cmplr* temporary files
- /usr/lib32/cmplrs/cpp C macro preprocessor
- /usr/lib32/cmplrs/asm symbolic assembler
-
- BBBBUUUUGGGGSSSS
- The assembler attempts to continue after finding semantic errors. These
- errors may result in internal errors.
-
-
-
-
- PPPPaaaaggggeeee 5555
-
-
-
-
-
-
- AAAASSSS((((1111)))) AAAASSSS((((1111))))
-
-
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- MIPSpro Assembly Language Programmer's Guide,
- MIPSpro N32 ABI Guide,
- MIPSpro 64-bit Porting and Transition Guide,
- cc(1), what(1), getabi(3c)
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- The diagnostics produced by the assembler are intended to be self-
- explanatory.
-
- NNNNOOOOTTTTEEEESSSS::::
- The environment variable SSSSGGGGIIII____AAAABBBBIIII can be used to change the default ABI
- behavior to be ----oooo33332222 , ----nnnn33332222 , or ----66664444 ; see getabi(3c). Also, the
- /etc/compiler.defaults file can be used to change default behavior. See
- the _c_c(1) man page for more information.
-
- The environment variables COMP_TARGET_ROOT, TOOLROOT, RLS_ID_OBJECT are
- used by _a_s while compiling the compiler itself. Their meaning is left
- undefined intentionally. They should nnnnooootttt be set in your environment.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 6666
-
-
-
-